import java.util.Scanner;

public class PrefixOne {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 1.读入数据
        // 读入 n 和 q
        int n = in.nextInt(), q = in.nextInt();
        // 读入数组(注意数组大小是n+1, 因为要读到an)
        int[] arr = new int[n+1];
        for(int i = 1; i < n+1; i++) {
            // i从1开始, 0位置元素值默认为0
            arr[i] = in.nextInt();
        }

        // 2.预处理出一个前缀和数组(和运算注意溢出问题)
        long[] dp = new long[n+1];
        // 遍历arr数组
        for(int i = 1; i < n+1; i++) {
            dp[i] = arr[i] + dp[i-1];
        }

        // 3.使用前缀和数组
        while(q != 0) {
            // 读入 l 和 r
            int l = in.nextInt(), r = in.nextInt();
            // 处理结果
            long result = dp[r] - dp[l-1];
            System.out.println(result);
            q--;
        }
    }
}
